<?php
/**
 * Created by PhpStorm.
 * User: 杨胜飞
 * Date: 2017\8\26 0026
 * Time: 15:52
 */

namespace app\common\model;


use think\Model;

/**
 * Class WorkOrderLog
 * @package app\common\model
 *      工单日志表  模型
 */
class WorkOrderLog extends Model
{

    /**
     * @param $data  ->  数组  ['key' => 'value', 'key' => 'value']
     * @return bool|false|int
     *    添加工单日志表数据
     */
    public function add($data)
    {
        // 添加工单日志表数据  过滤表中不存在的字段
        $this->data($data);
        $result = $this->allowField(true)->save();
        // 判断结果 并返回
        if ($result !== 1) {
            return false;
        }
        return $result;
    }

    /**
     * @param $id  ->  主键ID
     * @return $this|bool
     *       获取主键ID 完成一次逻辑删除
     */
    public function remove($id)
    {
        // 根据主键ID 完成一次逻辑删除
        $result = $this->where('work_order_log_id',$id)->update(['is_delete' => 1]);
        // 判断结果 并返回
        if ($result !== 1) {
            return false;
        }
        return $result;
    }

    /**
     * @param $where  ->  条件  ['key' => 'value']
     * @param $data   ->  数据  ['key' => 'value', 'key' => 'value']
     * @return $this|bool
     *     根据条件 $where 完成一次数据修改  注意传参顺序
     */
    public function edit($where,$data)
    {
        // 根据条件 $where 完成一次数据修改
        $result = $this->where($where)->update($data);
        // 判断结果并返回
        if ($result !== 1) {
            return false;
        }
        return $result;
    }

    /**
     * @param $where  ->  条件  ['key' => 'value']
     * @return array|bool|false|\PDOStatement|string|Model
     *     根据条件 $where 查询单条数据
     */
    public function getOne($where)
    {
        // 根据条件 $where 查询单条数据
        $userInfo = $this->where($where)->cache(true)->find();
        // 判断结果 并返回
        if ($userInfo == false) {
            return false;
        }
        return $userInfo;
    }

    /**
     * @return bool|false|\PDOStatement|string|\think\Collection
     *     获取 工单日志表 所有数据
     */
    public function getList($where=array(),$page=1,$pageSize=5)
    {
        $where['is_delete'] = 0;
        $userInfo = $this->where($where)->page($page,$pageSize)->cache(true)->order('operating_time DESC')->select();
        // 判断结果并返回
        if ($userInfo == false) {
            return false;
        }
        return $userInfo;
    }

}